2025-09-13
Per ogni ora di ottobre ho contato il numero di chiamate in ingresso suddividendo per codifica
Non sembrerebbe presente una periodicità ogni 8 ore per tutte le codifiche, tuttavia potrebbe essere utile considerarla nel modello per coprire i casi in cui la componente parrebbe essere significativa (Mercato Libero Retail)
Applicando la trasformazione \(\Delta_8 Y_t = Y_t - Y_{t - 8}\) si rimuove la periodicità con periodo di 8 ore, permettendoci di vedere più facilmente altre periodicità nei dati.
Anche in questo caso questa periodicità non sembra ugualmente diffusa tra tutte le codifiche, ma risulta utile includerla nel modello.
Applicando la stessa tecnica di prima, possiamo rimuovere le componenti periodiche con periodo di 12 ore.
Anche in questo caso risulta evidente una componente giornaliera.
Rimuovendo anche la componente settimanale ci rimane da analizzare la presenza di un qualche trend.
Non risulta apparente la presenza di un trend. E’ rimasto solo rumore.
Proposta di modello per il flusso di chiamate: \[ \begin{align} \lambda(c, t) &= e^{q_c + \sum_{i=0}^4 a_i \cos(\omega_i t) + b_i \sin(\omega_i t)} \\ &= e^{q_c}e^{\sum_{i=0}^4 a_i \cos(\omega_i t) + b_i \sin(\omega_i t)} \end{align} \]
Processo di Poisson non omogeneo con tasso \(\lambda(c, t)\): \[ x_t|c \sim PP(\lambda(c, t)) \]
Ciò implica che dato un intervallo temporale \((t_0, t_1)\) il numero \(Y_{t_0, t_1}\) di chiamate in ingresso segue la distribuzione:
\[ Y_{t_0, t_1}|c \sim \mathcal{P}(\Lambda(c, t_0, t_1)), \quad \Lambda(c, t_0, t_1) = \int_{t_0}^{t_1} \lambda(c, t) dt \]
Inoltre dato il tempo corrente \(s\) il tempo \(T|c, s\) per l’arrivo della prossima chiamata segue la distribuzione: \[ f(t|c, s) = \lambda(c, s + t) e^{-\Lambda(c, s, s + t)} \]
Ho seguito un approccio bayesiano, pertanto ho posto una distribuzione a priori per tutti i parametri \(q_c, a_i, b_i\) da stimare nel modello. In particolare ho posto una distribuzione a priori normale di media \(0\) e varianza \(0.0784\). \[ q_c, a_i, b_i \sim \mathcal{N}(0, 0.0784) \]
Attenzione!
Purtroppo a causa di una svista durante l’analisi ho involontariamente ignorato i dati del CreditoBusinness. Fortunatamente costituiscono meno dell’1% dei dati e non dovrebbe aver impattato significativamente sulla corretta stima dei parametri. Non ho rieseguito l’analisi corretta a causa dei tempi particolarmente lunghi per l’esecuzione dell’algoritmo (6/7 ore)
La previsione sembra seguire abbastanza bene l’andamento complessivo dei dati ma è ancora molto impreciso. Infatti i dati osservati finiscono all’interno dell’intervallo di confidenza al 95% solo il 76% dei casi. Ciò consiglia che il modello non è abbastanza flessibile da rappresentare adeguatamente l’andamento dei dati.
Una volta ottenuto un modello soddisfacentte per le chiamate in ingresso si può passare a modellare i tempi di evasione della chiamata. Nel dataset fornito c’è la colonna Durata conversazione che potrebbe essere utile a questo scopo, differenziando potenzialmente l’analisi tra i diversi valori di GESTIONE.
Con questi due modelli si potrebbe sviluppare una qualche funzione di perdita. Per esempio si potrebbe valutare l’impatto economico di una mancata risposta o di tempi di attesa troppo lunghi per il cliente, e l’impatto economico invece dell’assunzione di un determinato numero di persone disponibili a rispondere. Con questa funzione di perdita e con l’incertezza sui flussi e sui tempi di evasione adeguatamente modellati è possibile applicare metodologie teoretico-decisionali per determinare il numero di persone addette alla risposta che minimizza la perdita media.